#ifndef INVENTAIRE_H
#define INVENTAIRE_H

#include <vector>
#include <iostream>
#include "Armes.h"
#include "Armure.h"
#include "Casque.h"
#include "Protection.h"

using namespace std;

/*!
 * \file Inventaire.h
 * \brief Gestion de l'inventaire
 * \author B
 * \version 0.1
 */

class Inventaire
{
    public:
        /*! \brief Constructeur
        * Constructeur de la classe level
        */
        Inventaire();

        virtual ~Inventaire();

        /**
        * \fn int getNombreObjets()
        *  \brief Retourne le nombre d'objets
        *
        * \return Retourne un entier ( maximum 6)
        */

        int getNombreObjets();

        /**
        * \fn bool getParchemin()
        *  \brief Retourne si le parchemin est dans l'inventaire ou non
        *
        * \return Retourne un booléen
        */
        bool getParchemin();

        /**
        * \fn void ajoutObjet(Objets* objet)
        *  \brief Ajoute un objet à l'inventaire
        *
        * \param Prend en paramètre un objet ( arme, armure, casque, protection )
        */
        void ajoutObjet(Objets* objet);

        /**
        * \fn Objets* getObjets()
        *  \brief Retourne l'objet voulu
	*
        * \return Retourne un objet
        */
        Objets* getObjets();

        /**
        * \fn void Affichage()
        *  \brief Affiche l'inventaire
        */
        void Affichage();

    private:
        bool parchemin_;    /* Booléen sur le parchemin */
        vector<Objets*> inven; /* Vecteur de pointeur sur les objets */

};

#endif // INVENTAIRE_H
